<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %>
<%@ page import="com.wangyuan.po.User" %>
<%--
  User: Albert
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>EL表达式的使用</title>
</head>
<body>
    <%--
        EL表达式的使用
            empty
                判断域对象是否为空
                    为空，返回true
                    不为空，返回false
                如果域对象是字符串：
                    不存在的域对象：true
                    空字符串：true
                    null：true
                如果域对象是List：
                    null：true
                    没有长度的List（size）：true
                如果域对象是Map：
                    null：true
                    空map对象：true
                如果域对象是JavaBean：
                    null：true
                    空对象：false

                判断域对象不为空
                    ${!empty 限域变量名}

    --%>
    <%
        // 字符串
        request.setAttribute("str1", "abc");
        request.setAttribute("str2", "");
        request.setAttribute("str3", null);
        // List
        List list1 = new ArrayList();
        List list2 = null;
        List list3 = new ArrayList();
        list3.add(1);
        request.setAttribute("list1", list1);
        request.setAttribute("list2", list2);
        request.setAttribute("list3", list3);
        //Map
        Map map1 = null;
        Map map2 = new HashMap();
        Map map3 = new HashMap();
        map3.put(1, 2);
        request.setAttribute("map1", map1);
        request.setAttribute("map2", map2);
        request.setAttribute("map3", map3);
        //JavaBean对象
        User user1 = null;
        User user2 = new User();
        User user3 = new User.UserBuilder()
                .setUserId(1)
                .setUsername("AAA金项链批发庄总")
                .setPassword("Rose520")
                .build();
        request.setAttribute("user1", user1);
        request.setAttribute("user2", user2);
        request.setAttribute("user3", user3);
    %>

    <div>判断字符串是否存在</div>
    ${empty str} <br>   <%-- true --%>
    ${empty str1} <br>  <%-- false --%>
    ${empty str2} <br>  <%-- true --%>
    ${empty str3} <br>  <%-- true --%>
    <hr>
    <div>判断List是否为空</div>
    ${empty list1} <br>   <%-- true --%>
    ${empty list2} <br>  <%-- true --%>
    ${empty list3} <br>  <%-- false --%>
    <hr>
    <div>判断Map是否为空</div>
    ${empty map1} <br>   <%-- true --%>
    ${empty map2} <br>  <%-- true --%>
    ${empty map3} <br>  <%-- false --%>
    <hr>
    <div>判断JavaBean对象是否为空</div>
    ${empty user1} <br>   <%-- true --%>
    ${empty user2} <br>  <%-- false --%>
    ${empty user3} <br>  <%-- false --%>

    <%
        request.setAttribute("a", 10);
        request.setAttribute("b", 2);
        request.setAttribute("c", "aa");
        request.setAttribute("d", "bb");
    %>
    <%--
        判断两个值是否相等  ==/eq（equal）  !=/ne（not equal）
        其它算术判断不举例  >, <, >=, <=
    --%>
    <hr>
    <div>算术判断</div>
    ${a eq b} <br>
    ${a ne b} <br>
    ${c == d} <br>
    ${c != d} <br>

</body>
</html>